package es.biciapp.data;

import java.sql.Connection;
import java.sql.DriverManager;
import java.sql.PreparedStatement;
import java.sql.ResultSet;
import java.util.ArrayList;
import java.util.List;

import es.biciapp.logic.Bici;
import es.biciapp.logic.Salida;

public class QuerySalida {

	public static List<Salida> getSalidas() {
		List<Salida> bicis = new ArrayList<Salida>();
		Salida actual = new Salida();
		Connection conn;
		PreparedStatement ps;
		String url;
		ResultSet rs;
		try {
			Class.forName("org.sqlite.JDBC");
			url = "jdbc:sqlite:BiciApp.db";
			conn = DriverManager.getConnection(url, "", "");
			ps = conn.prepareStatement("SELECT * FROM SALIDA ;");
			rs = ps.executeQuery();
			while (rs.next()) {
				actual = new Salida();
				actual.setId(rs.getInt("ID_SALIDA"));
				actual.setNickUsuario(rs.getString("NICK_USUARIO"));
				actual.setIdRuta(rs.getInt("ID_RUTA"));
				actual.setRecorrido(rs.getString("RECORRIDO"));
				actual.setHora(rs.getString("HORA"));
				actual.setDistanciaRecorrida(rs.getFloat("DISTANCIA_RECORRIDA"));
				actual.setIdBici(rs.getInt("ID_BICI"));
				actual.setFechaSalida(rs.getDate("FECHA_SALIDA"));
				actual.setVelocidadMedia(rs.getFloat("VELOCIDAD_MEDIA"));

				bicis.add(actual);
			}
			conn.close();
			ps.close();
			rs.close();
			return bicis;
		} catch (Exception e) {
			e.printStackTrace();
			System.out.println("Error en la consulta getUsuarios()");
			return new ArrayList<Salida>();
		}
	}

	public static void main(String[] args) {
		CreateDB.createTableSalida();
		System.out.println(QuerySalida.getSalidas().toString());
	}
}
